<script>
	// 引入ERC20合约的ABI
	import erc20abi from "@/static/abis/erc20.json"
	import {
		ethers
	} from "ethers";
	// 定义成全局的,方便其他方法的调用
	var provider, signer, greet
	export default {
		onLaunch: function() {
			this.getaddress()
		},
		onLoad() {
			const lang = uni.getStorageSync('language') || 'zh-Hans'; //获取缓存的语言设置
			console.log(lang)
			this.$i18n.locale = lang //设置语言
			uni.setLocale(lang); //设置语言环境
			this.$store.commit('changeLanguage', lang);
			// 监听语言的切换
			uni.onLocaleChange(e => {
				this.$store.commit('changeLanguage', e.locale);
			});
			this.setTitle()//动态修改头部和tabBar
		},
		methods: {
			setTitle() {
				uni.setTabBarItem({
					// 修改底部导航
					index: 0,
					text: this.$t('rp1'),
				});
				uni.setTabBarItem({
					// 修改底部导航
					index: 1,
					text: this.$t('rp2'),
				});
				uni.setTabBarItem({
					// 修改底部导航
					index: 2,
					text: this.$t('rp3'),
				});
				uni.setTabBarItem({
					// 修改底部导航
					index: 3,
					text: this.$t('rp4'),
				});
			},
			async getaddress() {
				provider = new ethers.providers.Web3Provider(window.ethereum)
				signer = provider.getSigner();
				let accounts = await provider.send("eth_requestAccounts", []);
				this.address = accounts[0]
				this.$store.commit("SET_devAddress", this.address);
			},
			// async zhuanzhang() {
			// 	uni.showLoading({
			// 		title: "合约请求中"
			// 	})
			// 	//greet为生成的合约对象，需要注意的是signer参数，如果传进去就可以直接调用合约的修改方法
			// 	let greet = new ethers.Contract("0x55d398326f99059ff775485246999027b3197955", erc20abi, signer);
			// 	//调用合约的相关方法，parseEther是一个方法，可以将数字补18个0
			// 	let data = await greet.transfer("to地址", ethers.utils.parseEther(String(this.config
			// 			.superNodePrice)))
			// 		.catch(function(err) {
			// 			uni.showModal({
			// 				title: "提示",
			// 				showCancel: false,
			// 				content: "操作失败，主动取消或余额不足"
			// 			})
			// 			uni.hideLoading()
			// 			return
			// 		})

			// 	if (data.hash) {
			// 		let data2 = await provider.waitForTransaction(data.hash);
			// 		uni.hideLoading()
			// 		uni.$emit('getaccount');
			// 		uni.showModal({
			// 			title: "提示",
			// 			showCancel: false,
			// 			content: "购买成功，因区块确认原因可能会有一两分钟延迟",
			// 			success() {
			// 				uni.navigateBack()
			// 			}
			// 		})
			// 	} else {
			// 		uni.hideLoading()
			// 		uni.showModal({
			// 			title: "提示",
			// 			showCancel: false,
			// 			content: "操作失败，余额不足"
			// 		})
			// 	}
			// },
		}
	}
</script>

<style lang="scss">
	@import "@/uni_modules/uview-plus/index.scss";
	@import url("static/css/main.css");

	/*每个页面公共css */
	page {
		background-color: #000000;
		color: #ffffff;
		font-family: "苹方";

		.gHeadbox {
			height: 120rpx;
		}
	}
</style>